import React, {Component} from 'react';

import Text from './text';
import Text2 from './text2';
// const ThemeContext = React.createContext('light');
import { ThemeContext } from './createContext';    //引入
class View extends Component{


    handRefreshing = () => {
        if (STATS.refreshing === this.state.action) {
          return false;
        }

        setTimeout(() => {
          //refreshing complete
          this.setState({
            data: [],
            hasMore: true,
            action: STATS.refreshed,
            index: loadMoreLimitNum
          });
          // this.setState({
          //     data: [],
          // })
          // console.log('刷新');
          // 1、ajax 请求  并且页面page 等1
          // 2、map 循环的data 数组为空
          // 3、如果有其他的方法一样被调用
          // 4、初始化
          // init();

          // 改变state 值有什么方法
          // this.setState({
          //     data:[1,3,3]
          // })
          // this.setState((state,props)=>{
          //    page:state.page++
          // })
          // 不可以 this.state.page = 1;
          // 不可以 this.state = {
          //     page:1
          // }


        }, 3000);

        this.setState({
          action: STATS.refreshing
        });
      };
    handLoadMore = () => {
    if (STATS.loading === this.state.action) {
      return false;
    }
    //无更多内容则不执行后面逻辑
    if (!this.state.hasMore) {
      return;
    }

    setTimeout(() => {
      if (this.state.index === 0) {
        this.setState({
          action: STATS.reset,
          hasMore: false
        });
      } else {
        this.setState({
          data: [...this.state.data, cData[0], cData[0]],
          action: STATS.reset,
          index: this.state.index - 1
        });
        this.setState({
            page:
        })
        1、请求需要分页模块的ajax
        2、页码数要一次次增加
            1 请求第一页面
            2 请求第二页面数据
        3、把上次的数据和当前请求的数据进行合并
            1、一空数组和当前10第数据  就变成了10条数据
            2、已有10条数组和当前10条数组就变成20条数据
            this.state.listData  []
            this.state.listData  [1,2,3,4,5,6]
            this.setState({
                listData:[...this.state.listData,...res.data.data]
            })
      }
    }, 3000);

    this.setState({
      action: STATS.loading
    });
  };
    render(){

        return(
            <React.Fragment>
                <h3>context</h3>
                <ThemeContext.Provider value="dark">
                    <Text />
                    <Text2 />
                </ThemeContext.Provider>
            </React.Fragment>
        )
    }
}

export default View;
